// (c) 2008 Kickstone Technology Ltd

#pragma once

class IWebBrowserEventCallback {
public:

	// DWebBrowserEvents2 event handlers
	virtual HRESULT onBeforeNavigate2(IDispatch *pDisp, VARIANT *vUrl, VARIANT *Flags, VARIANT *TargetFrameName, VARIANT *PostData, VARIANT *Headers, VARIANT_BOOL *Cancel)=0;
	virtual HRESULT onNavigateComplete2(IDispatch *pDisp, VARIANT *vUrl)=0;
	virtual HRESULT onDownloadBegin()=0;
	virtual HRESULT onDocumentComplete(IDispatch *pDisp, VARIANT *vUrl)=0;
	virtual HRESULT onQuit()=0;
	virtual HRESULT onWindowStateChanged(DWORD dwFlags, DWORD dwValidFlagsMask)=0;

	virtual void releaseBrowserSink()=0;

};
